function fun(g, x) {
    return g(x);
}
var a = fun((x)=>x
, 10);
var b = fun((x)=>x
, 10);
var c = fun((x)=>x
, 10);
var d = fun((x)=>x
, 10);
var e = fun((x)=>x
, (x)=>x
, 10);
var f = fun((x)=>x
, (x)=>x
, 10);
var g1 = fun((x)=>x
, (x)=>x
, 10);
var h = fun((x)=>x
, (x)=>x
, 10);
// Ternaries in parens
var i = fun(Math.random() < 0.5 ? (x)=>x
 : (x)=>undefined
, 10);
var j = fun(Math.random() < 0.5 ? (x)=>x
 : (x)=>undefined
, 10);
var k = fun(Math.random() < 0.5 ? (x)=>x
 : (x)=>undefined
, (x)=>x
, 10);
var l = fun(Math.random() < 0.5 ? (x)=>x
 : (x)=>undefined
, (x)=>x
, 10);
var lambda1 = (x)=>x
;
var lambda2 = (x)=>x
;
var obj1 = {
    x: (x)=>(x, undefined)
    ,
    y: (y)=>(y, undefined)
};
var obj2 = {
    x: (x)=>(x, undefined)
    ,
    y: (y)=>(y, undefined)
};
